package org.dromara.xxmj.service;

import org.dromara.xxmj.domain.CourseScore;
import org.dromara.xxmj.domain.bo.XxmjUserExtBo;
import org.dromara.xxmj.domain.dto.DetailSubmitDTO;
import org.dromara.xxmj.domain.dto.ExerciseSubmitDto;
import org.dromara.xxmj.domain.dto.GetQuestionListDTO;
import org.dromara.xxmj.domain.dto.SimulationSubmitDTO;
import org.dromara.xxmj.domain.vo.*;

import java.util.Collection;
import java.util.List;

/**
 * 小巷密卷用户扩展Service接口
 *
 * @author Lion Li
 */
public interface XxmjExercisesService {

    List<CourseGeneralVO> list(GetQuestionListDTO getQuestionListDTO);

    List<UserErrorQuestionInfoVO> getDetailList(Long stuId);


    List<UserCollectQuestionInfoVO> getCollectList(String stuId);

    void addCollect(String stuId, Long questionId, Integer questionType);

    void cancelCollect(Long id);

    void delete(Long id);

    void detailSubmitAnswer(ExerciseSubmitDto dto);

    SubmitSimulationVO submitSimulation(SimulationSubmitDTO dto);

    List<CourseScore> getScoreList();

    GetTodayPracticeVO getTodayPractice();

    List<CoursePracticeVO> getRecentPractice();
}
